package com.soul.dubbo.api.mongo;

import com.soul.model.mongo.RecommendUser;
import com.soul.model.vo.PageResult;
import com.soul.model.vo.RecommendUserVo;

import java.util.List;

/**
 * @author mdoya
 * @version 1.0
 * @description:
 */
public interface RecommendUserApi {

    RecommendUser findTodayBestByRecommendUser(Long userId);

    /**
     *  首页推荐佳人分页列表 查询同登录用户符合度相符合用户
     * @param recommendUserVo 参数
     * @param userId 当前登录用户id
     * @return PageResult<RecommendUser>
     */
    PageResult<RecommendUser> findpageRecommendation(RecommendUserVo recommendUserVo, Long userId);

    /**
     *  根据登录用户id和佳人id获取缘分值
     * @param userId
     * @param personUserId
     * @return
     */
    RecommendUser findByUser(Long userId, Long personUserId);

    /**
     *  根据当前用户id查询推荐卡片
     * @param currendUserId 当前登录用户
     * @return List<RecommendUser>
     */
    List<RecommendUser> findCards(Long currendUserId);

    /**
     *  查询用户匹配度
     * @param userId
     * @param visitorUserId
     * @return
     */
    RecommendUser findUserMatchRate(Long userId, Long visitorUserId);
}
